import axios from "axios"
import Vue from 'vue';
import { Toast } from 'vant';

const instance = axios.create({
    baseURL: "http://kumanxuan1.f3322.net:8001",
    timeout: 30000,
})

// 请求拦截器
instance.interceptors.request.use(config => {
    // console.log(config);//是一个axios帮我们封装好的关于本次请求详情的一个对象   


    // 在这个函数中,可以去做一些请求发出去之前的准备工作,例如把token添加到请求头
    let token = localStorage.getItem("token")
    if(token){
        // 把token设置到请求头中
        config.headers["X-Nideshop-Token"] = token
    }
    //请求加载的提示展示
    Toast.loading({
        message: '加载中...',
        forbidClick: true,
    });

    // 需要返回config才能成功发出请求
    return config
}), err => {
    return Promise.reject(err)
}


// 响应拦截器
instance.interceptors.response.use(res => {//这里的res将来就是外面使用instance时返回的res
  let data = res.data
  if(data.errno !== 0){
      console.log("响应拦截器中",data.errmsg || "网络出错");
  }
  Toast.clear();

    return data

})


export default instance